Achieving high throughput (over 100 Mbps) in wireless communication systems has been an ongoing challenge in recent years. One of the established solutions is to use a plurality of transmit and receive antennas, a technology known as multiple-inputs multiple-outputs (MIMO). Advantageously, MIMO enables a significant increase in throughput and range of a wireless communication system, without any increase in bandwidth or overall transmission power expenditure. This is achieved by increasing the spectral efficiency (the number of information bits that can be transmitted per second of time and per Hertz of bandwidth) of a wireless communication system by exploiting the space domain (since multiple antennas are physically separated in space). MIMO is sometimes used in conjunction with orthogonal frequency multiplexing modulation (OFDM) that eliminates undesired side effects such as inter symbols interference (ISI) and fading channels.
FIG. 1 shows the general structure of a typical MIMO OFDM system according to the prior art. The MIMO transmitter 100 has multiple antennas 110A-110C each capable of transmitting independent signals to a MIMO receiver 120 which is also equipped with multiple receive antennas 130A-130B. The transmitter 100 may comprise a forward error correction (FEC) code encoder 101, an interleaver 102, a MIMO constellation Mapper 103, an OFDM MIMO modulator (IFFT) 104 and an analog and RF unit 105. The MIMO receiver 120 may comprise an RF and analog unit 121, a MIMO OFDM demodulator (FFT) 122, a MIMO decoder 123 (also known as a slicer), a de-interleaver 124 and a FEC Decoder 125, all of which are used to convert the incoming RF signals into spatial streams representing hits of information sent over the channel. The MIMO decoder (Slicer) receives a plurality of spatial streams of bits, and decodes them into information bits. In some MIMO systems the decoder performs hard decision and delivers final value information bits whereas in other systems the decoder delivers soft output for further soft decoding to be performed in a Viterbi decoder, low density parity check (LDPC) decoder or the like.
In a MIMO OFDM system, the received signals vector per tone at the fast Fourier transform (FFT) output may be given in the following expression:r=Ht+n  (1)wherein r is the received signals vector at a specific tone, H is the known (or estimated) channel matrix (at the same tone) typically containing complex coefficients representing the channel, t is the transmitted signals vector (per tone) and n is the additive noise vector (at that tone). Maximum-likelihood (ML) decoding provides the best performance for MIMO decoding in BER terms. An optimal per bit ML decoder for MIMO OFDM system is the log-likelihood ratio (LLR) decoder, but is very complicated to implement. A good approximation of LLR may be achieved by implementing the LogMax approximation. The LogMax decoder searches over all possible transmit signal vectors t to find the specific vector which minimizes the Euclidean distance d(t) given in the following expression:d(t)=∥r−Ht∥2  (2)
Specifically, for each transmit bit the LogMax algorithm searches the minimum value over d(t) (expression 2) for transmit vectors that assign a value of 0 to this bit and a second time searches a minimum value over d(t) for transmit vectors that assign a value of 1 to this bit. The difference between the two values (up to a scaling factor that is the noise variance) is the LogMax approximation.
In MIMO systems with square modulation, such as quadrature amplitude modulation (QAM), the number of distances calculations becomes exponential and is given in the following expression:M2NT  (3)wherein M2 is the number of points in the constellation and NT is the number of spatial streams. It is clear therefore that the complexity of LogMax decoder has to be reduced in order to be used in any practical application such as real-time communication systems.
Various attempts to deal with the high complexity challenge of ML MIMO decoding are known in the art. Most notably, US patent Application No. 20050249302 which is incorporated by reference in its entirety herein, discloses a reduced complexity MIMO-OFDM decoder for receiving and decoding simultaneously a plurality of transmitted signals. Another example is linear decoders which are simple to implement, and are sometimes used as spatial equalizers (i.e. linearly compensating for channel effect on vector of incoming signals prior to decoding). US Patent Application No. US20060092882, which is incorporated by reference in its entirety herein, discloses a MIMO-OFDM decoder that implements LogMax decoder by using zero-forcing ZF spatial equalizer. Another example for a linear decoder known in the art is the ubiquitous Mean-Square Error (MMSE) decoder However, linear decoders suffer from poor performance (in BER terms), specifically in high throughput transmission.
Another approach in MIMO decoding is to perform a non-exhaustive search over some of the constellation points, a method known as sphere decoding. In a sphere decoder the search is performed in a hyper sphere centered in a point x with radius r. Points are searches only in the sphere wherein the radius may be dynamically changed according to predefined parameters. For example, UK Patent No. GB2427106, which is incorporated by reference in its entirety herein, discloses a sphere decoder for MIMO applications with reduced computational complexity decomposition of the channel estimate matrix. However, the complexity of sphere decoding remains high for coded systems and it is also well depended upon signal-to-noise ratio (SNR).
Yet another approach is to simplify at least some of the expressions required in the process of the exhaustive search. For example, Monish Ghosh and Xuernei Ouyang suggest an alternative expression for the Euclidean distance in there article “Reduced-Complexity ML Detection for Coded MIMO Systems Using Absolute-Value Search” published in the International Conference on Acoustics, Speech, and Signal Processing 2005 Vol. 3 pages 1025-1028. Ghosh and Ouyang replace the Euclidean distance expression mentioned above in (2) with an expression which is based upon absolute value calculation that is easier to calculate.
Tradeoff between computational complexity and system performance in ML MIMO decoder poses a real challenge for engineers and it would be advantageous to have a full ML MIMO decoder that has a significantly reduced complexity on the one hand, while retaining its high performance on the other hand.